Smart garment that communicates at least one parameter to a receiver

ABSTRACT

For at least one smart garment in a garment inventory of a user, data that identifies the smart garment can be received via a transmitter integrated into the smart garment. A scheduled activity of the user can be identified. An outfit comprising the at least one smart garment for the user to wear to the scheduled activity can be determined, wherein the at least one smart garment is selected from the garment inventory of the user. A recommendation to wear the determined outfit, including the at least one smart garment selected from the garment inventory of the user, for the scheduled activity can be communicated to a client device associated with the user.

BACKGROUND

The present invention relates to smart fabrics and, more particularly,the use of smart fabrics in smart garments.

Smart fabrics are fabrics that include electronic components. Smartfabrics can perform tasks that traditional fabrics do not. For example,from an aesthetic perspective, smart fabrics can be illuminated and/orchange color. Smart fabrics also have been developed for protectiveclothing to guard against extreme environmental hazards like radiationand the effects of space travel. The health and beauty industry also istaking advantage of innovations such as drug-releasing medical textiles,and fabrics that include moisturizer, perfume, and anti-agingproperties.

SUMMARY

A method includes, for at least one smart garment in a garment inventoryof a user, receiving, via a transmitter integrated into the smartgarment, data that identifies the smart garment. The method also caninclude identifying a scheduled activity of the user. The method alsocan include determining, using a processor, an outfit comprising the atleast one smart garment for the user to wear to the scheduled activity,wherein the at least one smart garment is selected from the garmentinventory of the user. The method also can include communicating to aclient device associated with the user a recommendation to wear thedetermined outfit, including the at least one smart garment selectedfrom the garment inventory of the user, for the scheduled activity.

A system includes a processor programmed to initiate executableoperations. The executable operations include, for at least one smartgarment in a garment inventory of a user, receiving, via a transmitterintegrated into the smart garment, data that identifies the smartgarment. The executable operations also can include identifying ascheduled activity of the user. The executable operations also caninclude determining an outfit comprising the at least one smart garmentfor the user to wear to the scheduled activity, wherein the at least onesmart garment is selected from the garment inventory of the user. Theexecutable operations also can include communicating to a client deviceassociated with the user a recommendation to wear the determined outfit,including the at least one smart garment selected from the garmentinventory of the user, for the scheduled activity.

A computer program includes a computer readable storage medium havingprogram code stored thereon. The program code is executable by a dataprocessing system to initiate operations including for at least onesmart garment in a garment inventory of a user, receiving, via atransmitter integrated into the smart garment, data that identifies thesmart garment. The operations also can include identifying a scheduledactivity of the user. The operations also can include determining anoutfit comprising the at least one smart garment for the user to wear tothe scheduled activity, wherein the at least one smart garment isselected from the garment inventory of the user. The operations also caninclude communicating to a client device associated with the user arecommendation to wear the determined outfit, including the at least onesmart garment selected from the garment inventory of the user, for thescheduled activity

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a pictorial diagram illustrating an example of a smart fabric.

FIG. 2 is a pictorial diagram illustrating an example of a smartgarment.

FIG. 3 is a block diagram illustrating an example of a data processingenvironment.

FIG. 4 is a block diagram illustrating example architecture for aserver.

FIG. 5 is a flow chart illustrating an example of a method ofcommunicating to a receiver at least one parameter generated by a smartgarment.

FIG. 6 is a flow chart illustrating an example of a method ofcommunicating to a client device a fashion recommendation.

DETAILED DESCRIPTION

The present invention relates to smart fabrics and, more particularly,the use of smart fabrics in smart garments. In accordance with theinventive arrangements disclosed herein, a smart garment can include aplurality of integrated sensors, an integrated processor and anintegrated transmitter. The processor can receive sensor data generatedby the plurality of sensors. Based on the sensor data, the processor cangenerate at least one parameter and communicate the parameter to areceiver. The receiver can communicate the parameter to a server. Theserver can process the parameter and, based on such processing,communicate any of a variety of information to a client device of a userwearing the smart garment. For example, the server can communicate tothe client device information indicating fashion recommendations relatedto the smart garment. The server also can, based on such processing,communicate any of a variety of information to one or more retailersystems. For example, the server can communicate information withrecommendations to improve sales of smart garments, indicate smartgarments prone to defects, and so on.

Several definitions that apply throughout this document now will bepresented.

As defined herein, the term “smart garment” means a garment made, atleast in part, of smart fabric.

As defined herein, the term “smart fabric” means a fabric that includesat least at least one electronic component.

As defined herein, the term “client device” means a processing systemincluding at least one processor and memory that requests sharedservices from a server, and with which a user directly interacts.Examples of a client device include, but are not limited to, aworkstation, a desktop computer, a mobile computer, a laptop computer, anetbook computer, a tablet computer, a smart phone, a personal digitalassistant, a smart watch, smart glasses, a gaming device, a set-top box,a smart television and the like. Network infrastructure, such asrouters, firewalls, switches, access points and the like, are not clientdevices as the term “client device” is defined herein.

As defined herein, the term “server” means a processing system includingat least one processor and memory that shares services one or more othersystems and/or client devices.

As defined herein, the term “sensor” means a device that detects ormeasures a physical property and outputs corresponding data.

As defined herein, the term “processor” means at least one hardwarecircuit (e.g., an integrated circuit) configured to carry outinstructions contained in program code. Examples of a processor include,but are not limited to, a central processing unit (CPU), an arrayprocessor, a vector processor, a digital signal processor (DSP), afield-programmable gate array (FPGA), a programmable logic array (PLA),an application specific integrated circuit (ASIC), programmable logiccircuitry, and a controller.

As defined herein, the term “responsive to” means responding or reactingreadily to an action or event. Thus, if a second action is performed“responsive to” a first action, there is a causal relationship betweenan occurrence of the first action and an occurrence of the secondaction, and the term “responsive to” indicates such causal relationship.

As defined herein, the term “computer readable storage medium” means astorage medium that contains or stores program code for use by or inconnection with an instruction execution system, apparatus, or device.As defined herein, a “computer readable storage medium” is not atransitory, propagating signal per se.

As defined herein, the term “output” means storing in memory elements,writing to display or other peripheral output device, sending ortransmitting to another system, exporting, or similar operations.

As defined herein, the term “automatically” means without userintervention.

As defined herein, the term “user” means a person (i.e., a human being).

FIG. 1 is a pictorial diagram illustrating an example of a smart fabric100. The smart fabric can include a processor 105. The smart fabric 100also can include an RF transmitter (hereinafter “transmitter”) 110configured to transmit RF signals. In one arrangement, the transmitter110 can be a component of a transceiver that also includes an RFreceiver, although the present arrangements are not limited in thisregard. The smart fabric 100 also can include a plurality of sensors 115integrated into the smart fabric 100.

The processor 105 can include a computer readable storage medium, forexample an erasable programmable read-only memory (EPROM or Flashmemory), in which computer program code is stored. The computer programcode can be executed by the processor, as will be described. Theprocessor 105 also can include an accelerometer that detects movement,and/or any other suitable sensors or measurement components. Further,the processor 105 can include a plurality of input/output (I/O) ports toconnect the processor to other devices, such as the transmitter 110 andthe plurality of sensors 115. In one arrangement, the transmitter 110can be a component of the processor 105.

Each of the plurality of sensors 115 can be communicatively linked tothe processor 105, and the processor 105 can be communicatively linkedto the transmitter 110. Electrical conductors (not shown) can beintegrated into the smart fabric 100 to provide communication linksbetween the processor 105 and the transmitter 110 and sensors 115. Thesmart fabric 100 also can include an energy source 120 that providespower to the processor 105, transmitter 110 and, optionally, the sensors115. The energy source 120 can include, for example, a battery, a solarcell, a piezo electric charger, an inductive power supply, and/or anyother devices that generate and/or provide electricity. In the case thatthe energy source 120 is an inductive power supply, the inductive powersupply can generate electricity in response to a magnetic fieldgenerated by an inductive charger, as is known to those of ordinaryskill in the art. Power can be conveyed from the energy source 120 tothe processor 105, transmitter 110 and, optionally, the sensors 115 viaelectrical conductors.

In one arrangement, the electrical conductors can be embedded in threadsof the smart fabric 100, for example by spinning the electricalconductors into the threads. In another arrangement, the electricalconductors can be woven with the threads into the smart fabric 100.Further, the sensors 115 can be embedded into the threads of the smartfabric 100 when the threads are spun or can be embedded into the smartfabric 100 when the smart fabric is woven from the threads. Theprocessor 105 and transmitter 110 also can be embedded into the smartfabric 100 when the smart fabric 100 is woven from the threads, or canbe attached to the smart fabric 100 after the smart fabric 100 is woven.

In another arrangement, the processor 105, transmitter 110 and sensors115 can be embedded in a flexible material configured to be attached tofabric to form the smart fabric 100. For example, the flexible materialcan include a substrate into which the processor 105, transmitter 110,sensors 115 and conductors are embedded. The flexible material caninclude an adhesive on at least one side configured to attach theflexible material to the fabric. In illustration, the adhesive can beconfigured to be activated with heat and/or light to bond the flexiblematerial to the fabric. In an arrangement in which the adhesive is heatactivated, the processor 105, transmitter 110, sensors 115 andconductors can be configured to withstand the amount of activation heatwithout becoming damaged during the process of attaching the flexiblematerial to the fabric.

The transmitter 110 can be configured to receive signals from theprocessor 105, encode the signals, modulate the signals, etc. togenerate corresponding RF signals. For example, the transmitter 110 cangenerate RF signals in accordance with a suitable RF communicationprotocol, for example in accordance with one more IEEE 802-15 standards(e.g., Bluetooth®, Bluetooth® low energy (BLE), Zigbee®, and so on)and/or near field communication (NFC).

In one aspect, the sensors 115 can be capacitive sensors configured tooutput to the processor 105 respective signals corresponding to anamount of capacitance detected by the sensors 115. The sensors 115 alsocan be configured to detect a proximity of other sensors 115. Forexample, when the smart fabric 100 is folded, sensors may become inclose proximity to one another (e.g., within 0.5 mm, 1 mm, 2 mm, 3 mm, 4mm, 5 mm, etc.) of each other. A signal output by a particular sensor115 can indicate whether another sensor 115 is proximate to theparticular sensor and/or a distance between the sensors 115. Signalsoutput by one or more sensors 115 also can indicate proximity of thesensors (115) to biological tissue. For example, when a garment made ofthe smart fabric 100 is worn, one or more sensors 115 may be placedproximate to a user's skin (e.g., within 0.5 mm, 1 mm, 2 mm, 3 mm, 4 mm,5 mm, etc.), and the signals can indicate such.

In another arrangement, the sensors 115 can be contact sensorsconfigured to output to the processor 105 respective signalscorresponding to whether the sensors are in contact with other sensors.For example, a sensor 115 can output a first signal if the sensor 115 isphysically contacting another sensor 115. The sensor 115 can output asecond signal, or no signal, if the sensor 115 is not physicallycontacting another sensor 115. In illustration, for a particular sensor115 to detect whether the sensor 115 is physically contacting anothersensor 115, the sensor 115 can detect a level of electrical conductivitybetween the sensor 115 and the other sensor 115.

Still, other types of sensors 115 can be utilized, and the presentarrangements are not limited in this regard. In one arrangement, morethan one type of sensor can be used. For example, the plurality ofsensors 115 can include capacitive sensors and/or contact sensors, andfurther include at least one temperature sensor, at least one humiditysensor and/or other types of sensors.

In one non-limiting arrangement, each sensor 115 also can include aradio frequency identifier (RFID) tag. Each RFID tag can include acomputer readable storage medium, for example an erasable programmableread-only memory (EPROM or Flash memory), configured to store respectivedata for the sensor 115. The data can include a unique identifier forthe respective sensor 115. In addition, each RFID tag also can include areceiver (or transceiver), a decoder, a power supply and a processorconfigured to detect an RF signal, decode the RF signal to identify datacontained in the RF signal, and also store the data contained in the RFsignal in the computer readable storage medium. The power supply cangenerate energy for the decoder and processor to operate from energycontained in the RF signal, as is known in the art. As will bedescribed, the data contained in the RF signal can indicate in whichcomponent of a smart garment the sensor 115 is integrated.

FIG. 2 is a pictorial diagram illustrating an example of a smart garment200. The smart garment 200 can include the smart fabric 100 of FIG. 1.In illustration, the smart garment 200 can be made of the smart fabric100. The smart garment 200 can be a shirt, a sweater, a jacket, pants, askirt, a dress, or any other type of garment.

In one arrangement, different components 205, 210, 215, 220, 225, 230,235, 240 of the smart garment 200 can be cut from the smart fabric 100,and perhaps one or more other smart fabrics (not shown) following agarment pattern, and the components 205-240 can be sewn together tocreate the smart garment 200. The processor 105, transmitter 110 andenergy source 120 can be integrated into a respective portion of thesmart fabric 100 used for any of the smart garment components 205-240,and the present arrangements are not limited in this regard.

During the cutting process, various electrical conductors may be cut.During the sewing process, electrical connections to the sensors 115 canbe re-established by connecting ends respective ends of electricalconductors. For example, at a seam 250 where a sleeve 205 is connectedto a front 215 and back 220 of the smart garment 200, there may beelectrical conductors in the sleeve 205, front 215 and back 220 thathave been cut, and the electrical conductors of the sleeve 205 can beattached to the electrical conductors of the front 215 and back 225 ofthe smart garment 200 to form continuous electrical connections betweenthe processor 105 and the sensors 115. Since the sleeve 205, front 215and back 220 may be cut from different portions of the smart fabric 100,the electrical path between the processor 105 and each sensor 115 in thesleeve 205 need not be the same electrical path that was between theprocessor 105 and each of such sensors 115 in the smart fabric 100 priorto the components 205-240 being cut from the smart fabric 100. Therespective ends of the electrical conductors may be connected at theseam 250 by a person (e.g., a seamstress) while sewing the smart garment200 or by a robot configured to perform such operation. The respectiveends of the electrical conductors may be connected by soldering orwelding the respective ends of the electrical conductors together, orusing electrical connectors. The other components 205-240 of the smartgarment 200 can be sewn, and respective ends of electrical conductorscan be connected, in a similar manner.

At some point during manufacturing of the smart garment 200, for exampleafter the components 205-240 have been cut from the smart fabric 100,each of the components 205-240 can be scanned using an RF scanner, suchas an RFID scanner. The RFID scanner can be configured to scan eachcomponent 205-240 and communicate to the RFID tags of the respectivesensors 115 data indicating in which component 205-240, and where in thecomponent 205-240, the sensors 115 are integrated. For example, for alower part of the sleeve 205, a person or automated system can enterdata indicating “lower left sleeve” into the RFID scanner, and scan theportion of the smart fabric 100 in the lower part of the sleeve 205 withthe RFID scanner. The RFID tag in each sensor 115 of the lower part ofthe sleeve 205 can detect the RF signal emitted by the RFID scanner, andstore the data indicating “lower left sleeve” into the respectivecomputer readable storage medium. Similarly, for a placket 230 of thesmart garment 200, the person or automated system can enter dataindicating a particular button or button hole in the placket 230 intothe RFID scanner, and scan that portion of the placket 230 with the RFIDscanner. The RFID tag in each sensor 115 near the particular button orbutton hole can detect the RF signal emitted by the RFID scanner, andstore the data indicating “placket” and the particular “button or buttonhole” into the respective computer readable storage medium. The processcan be repeated for each of the components 205-240, as well as differentportions of the components 205-240.

At some point after the electrical conductors have been connected, andperhaps after the smart garment 200 is sewn, a person or automatedsystem can provide to the processor 105 information identifying thesmart garment 200, such as a garment model number, serial number, size,color style, etc. For example, the person or automated system can scanthe processor with an RF device, such as an RFID scanner, which cancommunicate to the processor the data containing the identifyinginformation. The processor 105 can store the data in the computerreadable storage medium of the processor 105. In this regard, responsiveto the processor 105 receiving, via a receiver (e.g., an RF receiverthat is a component of a transceiver that includes the transmitter 110),an RF signal containing identifying information, the processor 105 canstore data.

Further, the person or automated system can initiate the processor 105to execute the program code of the processor 105 to retrieve baselinesensor data from the sensors 115 integrated into various the components205-240 of the smart garment 200 to generate baseline measurements forthe sensors 115. The processor can receive energy from the energy source120, or energy contained in a received RF signal, to generate thebaseline measurements, and can receive the baseline sensor data via theaforementioned electrical conductors. A person or automated system caninitiate the processor 105 to retrieve the baseline sensor data bydepressing a button integrated into the processor, or scanning theprocessor with an RF device. In the case an RF device is used,responsive to receiving an RF signal containing particular data, theprocessor 105 can execute computer program code that causes theprocessor to poll each of the sensors 115 integrated into the variousthe components 205-240 of the smart garment 200.

The processor 105 can store data received from each sensor 115 in one ormore data tables within the computer readable storage medium of theprocessor 105. The data retrieved from each sensor 115 can identify thespecific sensor 115, indicate in which component 205-240 respectivesensor 115 is integrated, and indicate a portion of the component205-240 in which the sensor 115 is integrated. The data also can includea baseline sensor reading, for example a capacitance reading, detectedby the respective sensor. For each respective sensor 115, the processor105 can create an association between the sensor identifier, thebaseline sensor reading and the data indicating in which component205-240, and in which portion of the components 205-240, the sensor isintegrated. As each sensor 115 is polled by the processor 105, therespective sensor 115 can use energy contained in the polling signal toperform the baseline sensor reading and communicate the various data tothe processor 105. Once the baseline sensor measurements are stored bythe processor 105, the smart garment 200 is ready for packaging andsale. Of course, tags, etc. can be added to the smart garment 200 ifthis is desired.

The processor 105 can be configured to monitor sensor data generated bythe sensors 115, and process the sensor data to determine if the smartgarment 200 is being worn by a user. For example, responsive to theprocessor detecting movement (e.g., using an accelerometer) or detectinga particular RF signal, the processor 105 can initiate execution ofprogram code to poll the sensors 115 to receive sensor data. When asensors 115 is proximate to a user's biological tissue (e.g., skin), thesensors 115 can measure a value of capacitance that is different than avalue of capacitance measured when the sensor 115 is not proximate tothe user's biological tissue (e.g., different than the baseline sensormeasurement). Thus, the processor 105 can be configured to determinethat the sensor 115 is proximate to biological tissue if the sensor 115generates a sensor value within a particular range of sensor values,which can be predetermined.

Responsive to the processor 105 receiving sensor data from a thresholdnumber of the sensors 115 indicating that each of those sensors 115 isproximate to biological tissue, the processor 105 can determine that thesmart garment 200 is being worn by a user. In response, the processor105 can update data within the processor's computer readable storagemedium indicating a number of times the smart garment 200 is warn. Forexample, the processor 105 can increment a value by one. Inillustration, prior to the present detection of the smart garment 200being worn, the smart garment 200 may have been worn ten times, and acorresponding value may have indicated such. Responsive to the presentdetection of the smart garment 200 being worn, the processor 105 canincrement that value to eleven.

The processor 105 also can identify detect defects (e.g., rips, tears,etc.) in the smart garment 200. For example, responsive to polling thesensors 115, the processor 105 can determine whether sensor data isreceived from each of the sensors 115 identified in the data table inwhich the baseline sensor measurement data is stored. In illustration,the processor 105 can update the data table to indicate from whichsensors 115 the processor 105 receives sensor data during the presentpolling process. The processor 105 also can store to the data table thesensor data that is received. If there are sensors 115 indicated in thedata table based on the baseline measurement, but sensor data is notreceived from those sensors 115 during the present sensor poll, theprocessor can identify such sensors and the component 205-240, orportion of the component 205-240, of the smart garment 200 in whichthose sensors are integrated. If there are a threshold number of suchsensors 115 in a particular component 205-240, then the processor 105can determine that that component 205-240, or portion of the component205-240, is defective. For example, a rip or tear in the smart fabric100 may cause a break in one or more conductors connecting the processor105 to the sensors 115, and the rip or tear can be considered a defect.

Further, the processor 105 can detect a manner in which the smartgarment 200 is worn by the user. For example, responsive to detectingthe smart garment 200 being worn, the processor 105 can periodicallypoll the sensors 115 and, based on the sensor data received, determinethe manner in which the smart garment 200 is worn. For example, if thesmart garment 200 is a shirt, and the sensor data generated by sensors115 in lower portions of the front 215 and back 220 of the smart garmentindicate that the sensors are within a threshold distance of biologicaltissue (e.g., within 1 mm or 2 mm) of biological tissue, the processor105 can determine that the lower portion of the shirt is tucked in. Ifsuch sensors indicate that the sensors are not within the thresholddistance of biological tissue, the processor 105 can determine that theshirt is not tucked in.

Based on the sensor data, the processor 105 also can determine whether acuff 235 (or portion) of a sleeve 205 is rolled up, determine whether acollar 225 of the smart garment 200 is positioned to extend upward fromthe smart garment or folded down on the smart garment, and/or determinewhich buttons are fastened and which buttons are left unfastened. Inillustration, when sensors 115 are positioned proximate to one anotherand not in the same plane, the sensor data generated by those sensors115 may be different than the baseline sensor data, and within aparticular range of sensor values. The processor can identify thesensors 115 generating sensor data within that range of sensor valuesand, based on the identified sensors 115 and the sensor values,determine the manner in which the garment is being ward. For instance,responsive to detecting sensors 115 in the cuff 235 of the lower portionof the left sleeve 205 generating sensor values in that range, theprocessor 105 can determine that the cuff 235 is rolled up. Responsiveto determining that those sensors 115 are not generating sensor valuesin that range, the processor 105 can determine that the cuff 235 is notrolled up. Responsive to detecting sensors the collar 225 and sensors inthe front 215 and back 220 of the smart garment 200 generating sensorvalues in that range, the processor 105 can determine that the collar225 is down. Responsive to determining that those sensors 115 are notgenerating sensor values in that range, the processor 105 can determinethat the collar is up. Responsive to detecting sensors in the placket230 near a top button 260 or top button hole generating values in thatrange, the processor 105 can determine the top button 260 is fastened.Responsive to determining that those sensors 115 are not generatingsensor values in that range, the processor 105 can determine that thetop button 260 is not fastened. The processor 105 also can determinewhether a zipper is fastened or left open in a similar manner. Still,the processor 105 can identify any other manner in which a smart garmentmay be worn, and the present arrangements are not limited in thisregard.

FIG. 3 is a block diagram illustrating an example of a data processingenvironment (hereinafter “environment”) 300. The environment 300 caninclude the smart garment 200 of FIG. 2, and may include one or moreadditional smart garments. The environment 300 also can include one ormore servers 310, one or more retailer systems 315, one or more clientdevices 320 and one or more receivers (e.g., transceivers) 325. Theretailer systems 315 also can be servers, and may be communicativelylinked to the server(s) 310 via a communication network 330. The clientdevice(s) and receiver(s) 325 also can be communicatively liked to theserver(s) 310 via the communication network 330.

The communication network 330 is the medium used to providecommunications links between various devices and systems connectedtogether within the environment 300. The communication network 330 mayinclude connections, such as wire, wireless communication links, orfiber optic cables. The communication network 330 can be implemented as,or include, any of a variety of different communication technologiessuch as a WAN, a LAN, a wireless network, a mobile network, a VirtualPrivate Network (VPN), the Internet, the Public Switched TelephoneNetwork (PSTN), or similar technologies.

The server 310 can include a garment application 350 executable by oneor more processors of the server 310. The garment application 350 canhost a user interface in which the user interacts with the server 310via the client device 320, or interface with a mobile application viawhich the user interacts with the server 310. The garment application350 also can receive garment data 340, provide fashion recommendationsto the user, and provide a myriad of other information to the user.Further, the garment application 350 can receive data from the retailersystem(s) 315, and provide data and recommendations to the retailersystem(s) 315.

Via the client device 320, a user who possesses a smart garment 200 canregister the smart garment(s) 200 with the server 310, for example byinteracting with a user interface provided by the garment application350 or an application (e.g., a mobile application) that interfaces withthe garment application 350. In illustration, the user can create and/orupdate a user profile 360. In the user profile 360, the user can inputdemographic information of the user, the age of the user, geographiclocation information of the user, a type of lifestyle of the user (e.g.,physically active, socially active, etc.), health related information(e.g., physically fit, physically impaired, etc.), user householdincome, personality type, travel plans, and other user relatedinformation. Interfacing with the garment application 350, the user alsocan input identification information (e.g., a serial number) of a smartgarment 200. Responsive to the garment application 350 receiving theinformation, the garment application 350 can associate the smart garment200 with the user, for example by storing information in a data tableassociating the smart garment 200 with the user profile 360.

In another arrangement, the user can register the receiver(s) 325 withthe user profile 360. For example, the user can enter identificationinformation (e.g., a media access control (MAC) address or Internetprotocol (IP) address of a receiver 325, as well as an indicator ofwhere the receiver 325 is located (e.g., where in season garments arestored, where out of season or rarely used garments are stored, whereinformal garments are stored, where formal garments are stored, etc.).Thus, the garment application 350 can associate the receiver(s) 325 withthe user, and associate any information received from the receiver(s)325 with the user.

Each receiver 325 can be configured to send and receive RF signalscommunicated in accordance with one more suitable RF communicationprotocols. For example, the receiver(s) 325 can communicate inaccordance with one or more of the IEEE 802-15 communication standardsand/or near field communication (NFC). The receiver(s) 325 can receivegarment data 340 from the transmitter 110 of the smart garment 200, aswell as receive garment data from transmitters from other smartgarments. By way of example, at least one receiver 325 can be located ina closet and/or bedroom of a user. In one aspect, multiple receivers 325can be located in the user's place of residence. For instance, areceiver 325 can be located in the user's closet, a receiver 325 can belocated in, on or near a dresser, hutch or cabinet where the user storessmart garments, a receiver 325 can be located in a storage room or anattic where smart garments may be stored, and do on. The clientdevice(s) 320 and receiver(s) 325 also can be communicatively linked tothe server(s) 310 via the communication network 330.

In operation, the processor 105 can collect sensor data from the sensors115 as previously described and make corresponding determinations.Responsive to making the determinations, the processor 105 can generategarment data 340 and, via the transmitter 110, communicate the garmentdata 340 to a receiver 325. The garment data 340 can include, forexample, data that identifies the smart garment 200, data indicating anumber of times the smart garment 200 has been worn, data indicating anydefects that may be contained in the smart garment 200 and where on thesmart garment 200 those defects are located, data indicating the mannerin which the smart garment 200 is being worn by the user, etc. Inillustration, the receiver 325 may be a component of a transceiverconfigured to transmit a beacon signal. When the smart garment 200 iswithin range of the beacon signal, the processor 105 can detect, via areceiver of the smart garment 200 (e.g., an RF receiver of a transceiverthat includes the transmitter 110), the beacon signal. In response todetecting the beacon signal, the processor 105 can collect the sensordata from the sensors 115, generate the garment data 340, and transmit,via the transmitter 110, the garment data 340 to the receiver 325.

The receiver 325 can receive the garment data 340 and communicate thegarment data 340 to the garment application 350 via the communicationnetwork 330. In one arrangement, in addition to the garment data 340,the receiver 325 also can communicate to the garment application 350information that identifies the receiver 325. Based on the garment data340, the garment application 350 can determine whether the smart garment200 is currently being worn by the user. If the smart garment 200 is notcurrently being worn by the user, the garment application 350 can assumethat the smart garment 200 is being placed or removed from an area nearthe receiver 325. Also, based on the garment data 340, the garmentapplication 350 can identify any defects that may be present in thesmart garment 200, the number of times the user has worn the smartgarment 200, the manner in which the user wears the smart garment 200,the temperature and/or humidity of the environment in which the userwears the smart garment 200, etc. Further, each time the garmentapplication 350 receives garment data 340, the garment application 350can store the data and associate the data with the user's user profile360 and assign a time/date stamp to the garment data 340 indicating whenthe garment data 340 is received. Moreover, based on the time/date stampand the user's geographic location, which may be indicated in the user'suser profile 360, the garment application 350 can access climate dataand identify weather conditions in the user's geographic location whenthe user wore the smart garment 200. The garment application 350 can,via the communication network 330, access the climate data from anotherapplication executing on the server(s) 310 or another system that storessuch information.

In some cases, the garment application 350 may receive from the receiver325 garment data 340 from a plurality of garments (e.g., a blouse and apair of pants) in immediate succession, and each garment data 340 canindicate that the plurality of garments currently are being worn by theuser. In such case, the garment application 350 can determine that theuser has chosen to wear the plurality of garments together and generatecorresponding information, which the garment application 350 can storeto the user's user profile 360.

The garment application 350 can process the garment data 340, as well asgarment data generated for smart garments of other users, to generatestatistical information related to smart garments 200. The garmentapplication 350 can process the statistical data to generaterecommendations to users about smart garments the users may considerwearing. The garment application 350 can communicate suchrecommendations to the client device 320 of the user, for example viae-mail, text messaging, instant messaging or a mobile application.Accordingly, the garment application 350 can help the user select smartgarments to create a fashionable outfit.

The recommendations provided by the garment application 350 can be basedboth on data discovery and data modeling. The data discovery can includeobtaining data regarding clothing combinations, the manner in whichsmart garments 200 are worn, emerging fashion trends for specific agegroups, emerging fashion trends for specific geographic regions,emerging fashion trends for demographic groups, influencers of fashiontrends, fashion trend influencing factors, brand loyalty for differentage, demographic and location groups, loyalty to particular retailers,discovery of different fashion market segments, the impact on fashioninfluencers on different market segments, and so on. The discovered dataalso can include retail transaction data, data pertaining to smartgarments worn by users, feedback from users, reviews by users (e.g.,internet based reviews), etc. The garment application 350 can implementdata modeling on the data to identify correlations between garments usedin different clothing combinations, identify garment usage in variousgeographic locations, identify garments used during specific types ofactivities and/or events, identify garments worn by certain age groupsand demographic segments, identify user sentiment (e.g., by performinganalysis of feedback obtained from users), and so on.

In illustration, based on the data modelling, the garment application350 can identify trends in the manner in which smart garments 200 areworn. For instance, if the garment data 340 indicates that the user iswearing a smart garment 200, the server can communicate to the clientdevice 320 information indicating the manner in which the smart garment200 typically is worn, or has been worn by other people, and providerecommendations to the user as to the other types of smart garmentsother users may wear with the smart garment 200. In one arrangement,such information can be selected for the user based on the user's age,the user's demographic information, the user's geographic location,weather conditions at the user's geographic location, the day of theweek, a scheduled user activity, a scheduled event, and so on.

Further, the user can add to the user's user profile 360 feedback onsmart garments 200 worn by the user, an inventory of the user's othergarments, travel plans, scheduled events, planned activities and so on.For travel plans, the user can input expected travel locations andplanned activities and corresponding dates/times. For scheduled events,the user can input the locations of the scheduled events, and classifythe scheduled events as casual, semi-formal or formal. For plannedactivities, the user can input the types of activities (e.g., hiking,boating, dining, etc.) and corresponding dates/times. At scheduledtimes, for example each day, the garment application 350 can communicateto the client device 320 a recommended outfit to wear based on garmentsincluded in the user's wardrobe and the travel plans, events andactivities. Again, such recommendation can be based on the user's age,the user's demographic information, the user's geographic location orplanned geographic location, weather conditions at the geographiclocation, the day of the week, the type of activity or event, and so on.

At some time prior to a scheduled event or activity, for example at apredetermined time selected based on the user's user profile 360, thegarment application 350 can recommend an outfit for the user usinggarments contained in the user's inventory. The garment application 350can select the garments based on the classification of the activity orevent and forecasted weather conditions at the time of the activity orevent where the activity or event is scheduled. The server cancommunicate the garment recommendations to the client device 320. Inaddition, at some time prior to a user traveling, based on the user'stravel plans, the garment application 350 can select garmentsappropriate for the user based on the user's travel plans, andcommunicate corresponding recommendations to the user. Accordingly, theuser can select a fashionable wardrobe for the trip. The garmentapplication 350 also can communicate to the client device 320 eventreminders to remind the user of the upcoming activity, event or travelplans.

In an aspect of the present arrangements in which multiple receivers 325are present in the residence of the user, for example if the user storessmart garments 200 in multiple different locations, the garmentapplication 350 can store in the users user profile 360 data indicatingthe location of each smart garment 200. The location of each smartgarment 200 can be determined to be in a location serviced by thereceiver 325 which last received garment data 340 from the smart garment200. When generating a recommendation for communication to the user'sclient device 320 indicating a suggestion of a smart garment 200 towear, the garment application 350 also can indicate [[wear]] where thesmart garment 200 is located. This can save the user much time infinding such smart garments. Further, as seasons change, different smartgarments 200 may come into fashion, while other smart garments 200 maygo out of fashion. The garment application 350 can periodically analyzethe user's wardrobe, and make recommendations to the user which smartgarments 200 should be moved to storage and which smart garments 200should be moved to the user's closet, dresser or hutch. Suchrecommendations also can be communicated to the user's client device 320

Using the garment application 350, or another application hosted by theserver 310, users can share their wardrobes with other selected users.As noted, the garment application 350 can receive from a user a listingof garments contained in the user's wardrobe. The user can selectgarments, or groups of garments, which the user chooses to share withthe user's friends. Other users also can share their garments with theuser. When providing garment recommendations for a particular user, thegarment application 350 can consider not only garments contained in theuser's wardrobe, but also contained in the wardrobes of other users whohave selected to share their garments with the user. When the garmentapplication 350 recommends to the user a garment contained in anotheruser's wardrobe, the garment application 350 can identify the otheruser. Thus, the user to whom the recommendation is provided can contactthe other user to ask to borrow the garment. In one arrangement, thegarment application 350 can automate such request. For example, thegarment application 350 can present a user interface element (e.g.,check box, menu item, etc.) which the user may select. In response tothe user selecting the user interface element, the garment application350 can automatically generate a message indicating that the userdesires to borrow the garment, and communicate the message to the clientdevice of the other user.

Further, the garment application 350 can communicate to the clientdevice 320 style guides with recommendations on fashionable ways to wearthe garments. Such style guides can be provided by retailers, otherusers and/or clothing designers. For example, various style guides canbe directed to different age groups, geographic locations, demographicsegments, lifestyles, activities, etc. The garment application 350 canprocess the user's user profile 360 and other information received forthe user to select one or more style guides applicable to the user, andcommunicate the selected style guides to the user. Moreover, the usercan provide feedback and sentiment on the selected style guides. Thegarment application 350 can receive such feedback and sentiment, as wellas feedback and sentiment from other users, and process thefeedback/sentiment to update the style guides, rank the style guides,etc. When selecting one or more style guides, the garment application350 can perform such selection based, at least in part, on previousfeedback received on the style guides, both from the user and from otherusers.

In another aspect, responsive to identifying in the garment data 340that a smart garment 200 is damaged, or may be due for replacement basedon a number of times the smart garment 200 has been work (and likelywashed), the garment application 350 can communicate to the clientdevice 320 a replacement alert notifying the user that the user mayconsider replacing the smart garment 200. The garment application 350also can communicate with retailer systems 315 to identify similar smartgarments, and communicate to the client device 320 offers on similargarments. Such offers can indicate prices, discounts, sales events, etc.

The garment application 350 also can communicate to the retailer systems315 information to help retailers in selecting and presenting smartgarments 200 for sale, and better serve the needs and concerns of theircustomers. For example, the garment application 350 can communicate tothe retailer systems 315 feedback reports in which user feedback forsmart garments 200 is summarized and/or analyzed. Further, the garmentapplication 350 can communicate to the retail systems 315recommendations for product placement, recommendations on how smartgarments 200 should be displayed in retail locations, indicate smartgarments 200 having high rates of defects (which can indicate lowquality fabric being used or low quality manufacturing), indicate smartgarments 200 having low rates of defects, indicate smart garments 200that are worn most frequently, indicate demographic and/or ageinformation for users that typically wear certain types of smartgarments 200, and so on. The garment application 350 also cancommunicate to the retail systems 315 product scoring indicating howwell different smart garments 200 sell. The garment application 350 alsocan communicate data related to other customer interactions, for examplehow often smart garments 200 are returned, etc.

Further, the garment application 350 can receive from one or moreretailer systems 315 various types of information, for example data onclothing inventory at one or more stores, data indicating geographiclocations of stores, store plan information, lines of clothing currentlyoffered, lines of clothing being considered for offer, sales reports,retailer feedback, etc. The garment application 350 can process suchdata, along with garment data 340 received from various smart garments,user profile 360 information, user feedback, the previously describeddiscovered data and the previously described data modelling, to generatedata useful for retailers in selecting and presenting smart garments forsale to target different user segments. For example, the garmentapplication 350 can generate garment inventory recommendations based onemerging fashion trends (both general and among specific demographics),fashion influences, recommended clothing combinations, newly availablegarments, merchandising recommendations, smart garment purchase and usepatterns for demographic segments, etc.

FIG. 4 is a block diagram illustrating example architecture for theserver 310. The server 310 can include at least one processor 405 (e.g.,a central processing unit) coupled to memory elements 410 through asystem bus 415 or other suitable circuitry. As such, the server 310 canstore program code within the memory elements 410. The processor 405 canexecute the program code accessed from the memory elements 410 via thesystem bus 415. It should be appreciated that the server 310 can beimplemented in the form of any system including a processor and memorythat is capable of performing the functions and/or operations describedwithin this specification.

The memory elements 410 can include one or more physical memory devicessuch as, for example, local memory 420 and one or more bulk storagedevices 425. Local memory 420 refers to random access memory (RAM) orother non-persistent memory device(s) generally used during actualexecution of the program code. The bulk storage device(s) 425 can beimplemented as a hard disk drive (HDD), solid state drive (SSD), orother persistent data storage device. The server 310 also can includeone or more cache memories (not shown) that provide temporary storage ofat least some program code in order to reduce the number of timesprogram code must be retrieved from the bulk storage device 425 duringexecution.

At least one network adapter 430 can be coupled to the server 310 eitherdirectly or through intervening I/O controllers. The network adapter 430can enable the server 310 to become coupled to other systems, computersystems, remote printers, and/or remote storage devices throughintervening private or public networks. Modems, cable modems,transceivers, and Ethernet cards are examples of different types ofnetwork adapters 430 that can be used with the server 310.

As pictured in FIG. 4, the memory elements 410 can store the componentsof the server 310, namely the garment application 350 and the userprofile 360. Being implemented in the form of executable program code,the garment application 350 can be executed by the server 310 and, assuch, can be considered part of the server 310. Moreover, the garmentapplication 350 and the user profiles 360 are functional data structuresthat impart functionality when employed as part of the server 310.

FIG. 5 is a flow chart illustrating an example of a method 500 ofcommunicating to a receiver at least one parameter generated by a smartgarment. At step 505, a processor integrated into the smart garment canreceive sensor data generated by a plurality of sensors integrated intothe smart garment. At step 510, the processor can, based on the sensordata, generate at least one parameter indicating a manner in which thesmart garment is worn. For example, the parameter can indicate wither atleast one sleeve of the smart garment is rolled up, indicate whether acollar of the smart garment is positioned to extend upward from thesmart garment or folded down on the smart garment, and/or indicate atleast one button of the smart garment that is not fastened. the at leastone parameter further can indicate damage to the smart garment, a lengthof time the smart garment is worn and/or a number of times the smartgarment is worn. At step 515, a transmitter integrated into the smartgarment can communicate to a receiver the at least one parameter, the atleast one parameter at least indicating the manner in which the smartgarment is worn.

FIG. 6 is a flow chart illustrating an example of a method 600 ofcommunicating to a client device a fashion recommendation. At step 605,a server can receive, via a receiver, from a transmitter integrated intoa smart garment, a parameter indicating the smart garment presently isbeing worn by a user. At step 610, based on the at least one parameterindicating the smart garment presently is being worn by the user, theserver can identify the smart garment. At step 615, responsive toidentifying the smart garment, the server can determine a fashionrecommendation for the user. For example, the server can determine amanner in which the smart garment may be worn, other garments that maybe worn with the smart garment, and so on. At step 620, the server cancommunicate the fashion recommendation to a client device associatedwith the user, for example a client device used by the user.

While the disclosure concludes with claims defining novel features, itis believed that the various features described herein will be betterunderstood from a consideration of the description in conjunction withthe drawings. The process(es), machine(s), manufacture(s) and anyvariations thereof described within this disclosure are provided forpurposes of illustration. Any specific structural and functional detailsdescribed are not to be interpreted as limiting, but merely as a basisfor the claims and as a representative basis for teaching one skilled inthe art to variously employ the features described in virtually anyappropriately detailed structure. Further, the terms and phrases usedwithin this disclosure are not intended to be limiting, but rather toprovide an understandable description of the features described.

For purposes of simplicity and clarity of illustration, elements shownin the figures have not necessarily been drawn to scale. For example,the dimensions of some of the elements may be exaggerated relative toother elements for clarity. Further, where considered appropriate,reference numbers are repeated among the figures to indicatecorresponding, analogous, or like features.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a,” “an,” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “includes,”“including,” “comprises,” and/or “comprising,” when used in thisdisclosure, specify the presence of stated features, integers, steps,operations, elements, and/or components, but do not preclude thepresence or addition of one or more other features, integers, steps,operations, elements, components, and/or groups thereof.

Reference throughout this disclosure to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment described within this disclosure.Thus, appearances of the phrases “in one embodiment,” “in anembodiment,” and similar language throughout this disclosure may, but donot necessarily, all refer to the same embodiment.

The term “plurality,” as used herein, is defined as two or more thantwo. The term “another,” as used herein, is defined as at least a secondor more. The term “coupled,” as used herein, is defined as connected,whether directly without any intervening elements or indirectly with oneor more intervening elements, unless otherwise indicated. Two elementsalso can be coupled mechanically, electrically, or communicativelylinked through a communication channel, pathway, network, or system. Theterm “and/or” as used herein refers to and encompasses any and allpossible combinations of one or more of the associated listed items. Itwill also be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms, as these terms are only used to distinguishone element from another unless stated otherwise or the contextindicates otherwise.

The term “if” may be construed to mean “when” or “upon” or “in responseto determining” or “in response to detecting,” depending on the context.Similarly, the phrase “if it is determined” or “if [a stated conditionor event] is detected” may be construed to mean “upon determining” or“in response to determining” or “upon detecting [the stated condition orevent]” or “in response to detecting [the stated condition or event],”depending on the context.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

1-20. (canceled)
 21. A method, comprising: for at least one smartgarment in a garment inventory of a user, receiving, via a transmitterintegrated into the smart garment, data that identifies the smartgarment; identifying a scheduled activity of the user; determining,using a processor, an outfit comprising the at least one smart garmentfor the user to wear to the scheduled activity, wherein the at least onesmart garment is selected from the garment inventory of the user; andcommunicating to a client device associated with the user arecommendation to wear the determined outfit, including the at least onesmart garment selected from the garment inventory of the user, for thescheduled activity.
 22. The method of claim 21, further comprising:receiving demographic information of the user; wherein determining theoutfit comprising the at least one garment for the user to wear to thescheduled activity comprises determining the outfit based, at least inpart, on the demographic information of the user.
 23. The method ofclaim 21, further comprising: determining forecasted weather conditionsat a geographic location where the scheduled activity is to take placeat a time of the scheduled activity; wherein determining the outfitcomprising the at least one smart garment selected from the garmentinventory of the user for the user to wear to the scheduled activitycomprises determining the outfit based, at least in part, on theforecasted weather conditions at the geographic location where thescheduled activity is to take place at the time of the scheduledactivity.
 24. The method of claim 21, further comprising: identifying alocation of the at least one smart garment selected from the garmentinventory of the user for the user; and communicating to the clientdevice associated with the user an indication of where the at least onesmart garment is located.
 25. The method of claim 21, furthercomprising: analyzing the garment inventory of the user; and based onthe analyzing the garment inventory of the user, communicating to theclient device associated with the user an indication of which smartgarments in the garment inventory should be moved to storage based on achange in season.
 26. The method of claim 21, further comprising:analyzing the garment inventory of the user; and based on the analyzingthe garment inventory of the user, communicating to the client deviceassociated with the user an indication of which smart garments in thegarment inventory should be moved to a closet, dresser or hutch based ona change in season.
 27. The method of claim 21, further comprising:identifying at least second user who has chosen to share their smartgarments with the user; wherein the determined outfit further comprisesat least a second smart garment selected from a garment inventory of thesecond user; and wherein communicating to the client device associatedwith the user the recommendation to wear the determined outfit for thescheduled activity comprises indicating the second user from whom thesecond smart garment may be obtained.
 28. A system, comprising: aprocessor programmed to initiate executable operations comprising: forat least one smart garment in a garment inventory of a user, receiving,via a transmitter integrated into the smart garment, data thatidentifies the smart garment; identifying a scheduled activity of theuser; determining an outfit comprising the at least one smart garmentfor the user to wear to the scheduled activity, wherein the at least onesmart garment is selected from the garment inventory of the user; andcommunicating to a client device associated with the user arecommendation to wear the determined outfit, including the at least onesmart garment selected from the garment inventory of the user, for thescheduled activity.
 29. The system of claim 28, the executableoperations further comprising: receiving demographic information of theuser; wherein determining the outfit comprising the at least one garmentfor the user to wear to the scheduled activity comprises determining theoutfit based, at least in part, on the demographic information of theuser.
 30. The system of claim 28, the executable operations furthercomprising: determining forecasted weather conditions at a geographiclocation where the scheduled activity is to take place at a time of thescheduled activity; wherein determining the outfit comprising the atleast one smart garment selected from the garment inventory of the userfor the user to wear to the scheduled activity comprises determining theoutfit based, at least in part, on the forecasted weather conditions atthe geographic location where the scheduled activity is to take place atthe time of the scheduled activity.
 31. The system of claim 28, theexecutable operations further comprising: identifying a location of theat least one smart garment selected from the garment inventory of theuser for the user; and communicating to the client device associatedwith the user an indication of where the at least one smart garment islocated.
 32. The system of claim 28, the executable operations furthercomprising: analyzing the garment inventory of the user; and based onthe analyzing the garment inventory of the user, communicating to theclient device associated with the user an indication of which smartgarments in the garment inventory should be moved to storage based on achange in season.
 33. The system of claim 28, the executable operationsfurther comprising: analyzing the garment inventory of the user; andbased on the analyzing the garment inventory of the user, communicatingto the client device associated with the user an indication of whichsmart garments in the garment inventory should be moved to a closet,dresser or hutch based on a change in season.
 34. The system of claim28, the executable operations further comprising: identifying at leastsecond user who has chosen to share their smart garments with the user;wherein the determined outfit further comprises at least a second smartgarment selected from a garment inventory of the second user; andwherein communicating to the client device associated with the user therecommendation to wear the determined outfit for the scheduled activitycomprises indicating the second user from whom the second smart garmentmay be obtained.
 35. A computer program product, comprising: a computerreadable storage medium having program code stored thereon, the programcode executable by a data processing system to initiate operationsincluding: for at least one smart garment in a garment inventory of auser, receiving, via a transmitter integrated into the smart garment,data that identifies the smart garment; identifying a scheduled activityof the user; determining an outfit comprising the at least one smartgarment for the user to wear to the scheduled activity, wherein the atleast one smart garment is selected from the garment inventory of theuser; and communicating to a client device associated with the user arecommendation to wear the determined outfit, including the at least onesmart garment selected from the garment inventory of the user, for thescheduled activity.
 36. The computer program product of claim 35, theoperations further comprising: receiving demographic information of theuser; wherein determining the outfit comprising the at least one garmentfor the user to wear to the scheduled activity comprises determining theoutfit based, at least in part, on the demographic information of theuser.
 37. The computer program product of claim 35, the operationsfurther comprising: determining forecasted weather conditions at ageographic location where the scheduled activity is to take place at atime of the scheduled activity; wherein determining the outfitcomprising the at least one smart garment selected from the garmentinventory of the user for the user to wear to the scheduled activitycomprises determining the outfit based, at least in part, on theforecasted weather conditions at the geographic location where thescheduled activity is to take place at the time of the scheduledactivity.
 38. The computer program product of claim 35, the operationsfurther comprising: identifying a location of the at least one smartgarment selected from the garment inventory of the user for the user;and communicating to the client device associated with the user anindication of where the at least one smart garment is located.
 39. Thecomputer program product of claim 35, the operations further comprising:analyzing the garment inventory of the user; and based on the analyzingthe garment inventory of the user, communicating to the client deviceassociated with the user an indication of which smart garments in thegarment inventory should be moved to storage based on a change inseason.
 40. The computer program product of claim 35, the operationsfurther comprising: analyzing the garment inventory of the user; andbased on the analyzing the garment inventory of the user, communicatingto the client device associated with the user an indication of whichsmart garments in the garment inventory should be moved to a closet,dresser or hutch based on a change in season.